In many applications, such as data communications systems or sigma-delta digital-to-analog converters (DACs), it is important to accurately control the duty cycle of a digital waveform because it is the duty cycle of the waveform that contains information. In general, errors may be added to the duty cycle of a digital waveform (i.e., the waveform may be distorted) in one of two ways: either by data dependent variations in rise and fall times or by data dependent delays.